﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using iLangl.Security;
using System.Collections;
using iLangl.Customer.DAL;


namespace iLangl.Customer.Managers
{
	//public class AuthenticationManager : BaseManager, IAuthenticationManager
	//{

	//    Hashtable sessions;
	//    #region Singelton Pattern
	//    public AuthenticationManager()
	//    {
	//        sessions = new Hashtable();
	//    }

	//    private static AuthenticationManager instance;
	//    private static object mutex = new object();
	//    /// <summary>
	//    /// The instance of the AuthenticationManager.
	//    /// </summary>
	//    public static AuthenticationManager Instance
	//    {
	//        get
	//        {
	//            if (instance == null)
	//            {
	//                lock (mutex)
	//                {
	//                    if (instance == null)
	//                    {
	//                        instance = new AuthenticationManager();
	//                    }
	//                }
	//            }
	//            return instance;
	//        }
	//    }
	//    #endregion

	//    #region IAuthenticationManager Members


	//    public string CreateSession(string login, string password)
	//    {
	//        string userId = DALFacade.Instance.SecurityDAL.AuthenticateUser(login, password);

	//        if(String.IsNullOrEmpty(userId))
	//        {
	//            throw new ApplicationException("Authentication is faled!");
	//        }

	//        string sessionKey = Guid.NewGuid().ToString();

	//        sessions[sessionKey] = userId;

	//        return sessionKey;
	//    }

	//    public void RegisterUser(string login, string password)
	//    {
	//        DALFacade.Instance.SecurityDAL.RegisterUser(login, password, null);
	//    }
	//    public bool IsAuthenticated(string sessionKey)
	//    {
	//        return (sessions[sessionKey] != null);
	//    }

	//    public string GetUserId(string sessionKey)
	//    {
	//        return (String)(sessions[sessionKey]);
	//    }

	//    #endregion
	//}
}
